home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 2
/
Atari Mega Archive CD - Volume 2.iso
/
8bit
/
cislib_b
/
rmdsk2.doc
< prev
next >
Wrap
Text File
|
1995-04-22
|
5KB
|
133 lines
5-22-85 RAMDISK2 Page 1
RAMDISK2 configures an ATARI 130XE's Extra RAM for use with ATARI DOS
2.0S or the OSS DOSXL File Management System.
The Ramdisk (D4) created by RAMDISK2 has 503 free sectors, 4 through
359 and 369 through 515. Sectors 360 through 368 contain the VTOC and
Directory as usual. Boot sectors 1 through 3 do not exist, but a read
or write attempt returns a 'success' status code. Any attempt to
access sector 516 or higher returns an error 144.
INSTALLATION
Following a power up boot, the RAMDISK2 object file automatically
installs and formats the Ramdisk when executed as a binary load file.
It may alternatively be renamed to AUTORUN.SYS. The installation
functions are:
1. Verify that the DOS File Management System is either the standard
Version 2 as supplied with ATARI DOS 2.0S and normal OSS DOSXL, or the
modified version from DOSXL.XL. Exit if not.
2. Verify that the computer system actually has Extra Ram at 4000
hexidecimal. Exit if not.
3. Copy the relocatable driver code to the end of the FMS, and set the
drive bit in DRVBYT for drive 4.
4. Replace the FMS calls to SIO and the OS Resident Disk Handler with
calls to the relocated code.
5. If the FMS was the standard Version 2, kill the 'write DOS'
function by pointing it to the Invalid Device Command error return.
6. Add the length of the driver code to SASA, the FMS start of
allocation address word.
7. Reinitialize the FMS.
8. If the Extra RAM is not already formatted as Ramdisk, clear it to
zeroes and write the VTOC for the 503 available sectors.
NOTES:
Once the installation has been done, rerunning the RAMDISK2
code will exit at function 1, thus avoiding multiple copies of
the driver code.
Function 8 allows rebooting the computer by forcing a
coldstart. A reboot without turning off the computer does
not destroy the Ramdisk contents.
5-22-85 RAMDISK2 Page 2
USE
Once RAMDISK2 has set up D4 in the Extra Ram it may be used like any
other drive interfaced through DOS.
The bit map in the VTOC created with the Ramdisk indicates sectors 516
through 720 are in use, so the FMS will not attempt to write to them.
However, if you reformat the Ramdisk, the driver code merely corrects
the maximum and free sector counts in the VTOC written by FMS. The
same logic applies to a sector copy routine like the the DUPDSK
extrinsic command of DOSXL, which directly copies each sector shown in
use by the bit map. The FMS merely maintains the sector counts for
your convenience, and actually uses the bit map for all decisions on
what sectors are available. Therefore this logic allows duplicating an
actual disk to the Ramdisk and back to disk again, so long as no
sector above 515 is in use. I strongly rcommend, however, that a COPY
with wildcards be used instead, as that will maintain the bit map and
sector counts together.
WARNINGS
Any program which does not use the DOS File Management System for all
disk handling will probably not work. For example, the DOS 2.0S
DUP.SYS has its own call to the OS Resident Disk Handler for drive
status. The other problem with using DUP.SYS is that the Ramdisk
driver uses 255 of the measly 768 bytes allowed by the system for VTOC
and Sector buffers. As with the addition of any other single density
disk, the FMS allocates an additional 128 byte space for the VTOC.
Thus, installation of the Ramdisk increases LOMEM 383 bytes.
The Ramdisk will obviously be incompatible with any program which uses
the 130XE Extra Ram for other purposes.
The modifications affect the FMS code which would be written by a
'write DOS.SYS' operation. Since the Ramdisk driver code would not yet
be loaded when the boot code attempted Serial IO, a cold boot
operation would immediately lock up the computer. It would then be
necessary to power down, thereby losing any information on the
Ramdisk. The installation code forces the 'write DOS.SYS' code in the
standard FMS to return an invalid command (168) error code. If you see
it, do not attempt to boot from the disk which was being written at
that time.
Josef W. Segur [74676,3047] 5-25-85